Skip to content

IDEX l1b: fix temperature conversion segmented poly - #3631

Merged
lacoak21 merged 4 commits into
IMAP-Science-Operations-Center:devfrom
lacoak21:idex_fix_temperature_conversion_segmented_poly
Nov 10, 2026
Merged

lacoak21 merged 4 commits into
IMAP-Science-Operations-Center:devfrom
lacoak21:idex_fix_temperature_conversion_segmented_poly

Conversation

@lacoak21

@lacoak21 lacoak21 commented Nov 5, 2026 •

Copy link
Copy Markdown
Contributor

Change Summary

closes #3601

Overview

Fix temperature conversion.

File changes

  • update variable unpacking config

@lacoak21
lacoak21 requested review from aldo9253 and a balanced review from Copilot November 5, 2026 19:15
@lacoak21
lacoak21 force-pushed the idex_fix_temperature_conversion_segmented_poly branch from 0fc3aaf to 9c56774 Compare November 5, 2026 19:16

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Interval-grouping and uncertainty-masking defects can mix integrations, mispair livetime, and select invalid uncertainties, while L2 timestamps are also shifted 30 seconds late.

No open issues 🎉

What changed in this PR

This PR corrects IDEX processor-board temperature conversion in the shared engineering-unit pipeline. It also changes HIT processing to retain incomplete ten-minute sets and propagate their grouping through L1A–L2.

Changes:

  • Add segmented temperature polynomials for both IDEX sensors and preserve floating-point conversion results.
  • Rework HIT set identification, livetime normalization, and L2 grouping to accommodate dropped frames.
  • Add regression tests and HIT header-minute-count metadata.
File Description
imap_processing/​utils.py Preserve floating-point results for segmented polynomials.
imap_processing/​tests/​idex/​test_idex_l1b.py Test temperature segment boundaries and negative results.
imap_processing/​tests/​hit/​test_hit_l2.py Update grouping fixtures and timestamp expectations.
imap_processing/​tests/​hit/​test_hit_l1b.py Test complete, incomplete, and mismatched livetime inputs.
imap_processing/​tests/​hit/​test_hit_l1a.py Expand partial-set and dropped-frame coverage.
imap_processing/​idex/​idex_variable_unpacking_and_eu_conversion.csv Define four conversion segments per temperature sensor.
imap_processing/​hit/​l2/​hit_l2.py Group records by set and revise integration timestamps.
imap_processing/​hit/​l1b/​hit_l1b.py Scale partial-set livetime and retain header minute counts.
imap_processing/​hit/​l1a/​hit_l1a.py Retain incomplete sets and select predecessor livetime.
imap_processing/​cdf/​config/​imap_hit_l1b_variable_attrs.yaml Add header-minute-count support-variable metadata.

Review effort: Balanced

@lacoak21
lacoak21 requested a balanced review from Copilot November 9, 2026 19:48
@lacoak21 lacoak21 self-assigned this Nov 9, 2026
@lacoak21
lacoak21 marked this pull request as ready for review November 9, 2026 19:48
@lacoak21
lacoak21 requested a review from leowerneck November 9, 2026 19:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The existing test would not detect removal of the float cast, leaving unsigned integer inputs that produce fractional and negative polynomial results without regression coverage.

1 open issue

Review effort: Balanced

Comment thread imap_processing/utils.py Resolved
Comment thread imap_processing/utils.py Resolved

@tmplummer tmplummer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me.

@leowerneck

leowerneck commented Nov 9, 2026 •

Copy link
Copy Markdown
Contributor

The fix looks good to me, though I'll admit I haven't tested the new code locally.

@lacoak21
lacoak21 merged commit bbdb97c into IMAP-Science-Operations-Center:dev Nov 10, 2026
22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BUG - IDEX Processor Board Temperature Conversion Error

4 participants